/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package ejemplostring1;
public class Persona {
   private String nombre;
   private String apellido1;
   private  String apellido2;
   private  String dni;

    public Persona(String nombre, String apellido1, String apellido2, String dni) {
        this.nombre = nombre;
        this.apellido1 = apellido1;
        this.apellido2 = apellido2;
        this.dni = dni;
    }
    public String contraseña(){
        String c=null;
        String s1=this.nombre.substring(0,1);
        String s2=this.apellido1.substring(0,3);
        int m=this.apellido2.length();
        String s3=this.apellido2.substring(m-1,m);
        c=s1+s2+s3;
        return (c);        
    }
    public boolean dniValido(){
        boolean valido=true;
        String dato="TRWAGMYFPDXBNJZSQVHLCKE";
        String num;
        if(this.dni.length()!=9){
            valido=false;
        }
        else{
            //ahora miramos si la letra esta BIEN
            //extraigo el numero
            num=this.dni.substring(0, 8);
            //le tenemos que trnasformar a numero para poder hace operaciones aritmeticas
            int n=Integer.parseInt(num);
            //calculo el resto
            int r=n%23;
            //accdemos a la posicion r del string
            char letra=dato.charAt(r);
           
            //extraigo la oletra del dni
            //pero antes de extraerla ponemos todo el dni a mayusculas
            char letradni=this.dni.toUpperCase().charAt(8);
            if(letradni!=letra){
                valido=false;
            }           
        }
         return valido;
    }
}
